package cn.wolfcode.trip.base.service;

import cn.wolfcode.trip.base.domain.Integral;
import cn.wolfcode.trip.base.domain.IntegralChange;
import cn.wolfcode.trip.base.domain.OrderList;
import cn.wolfcode.trip.base.domain.Sign;
import cn.wolfcode.trip.base.query.QueryObject;
import com.github.pagehelper.PageInfo;

import java.util.List;

public interface IIntegralService {
    /**
     * 签到成功后,根据签到结果进行积分增长
     * @param sign 签到对象,包含签到的结果
     */
    void sign(Sign sign);

    /**
     * 根据用户id获取用户积分
     * @param userId
     * @return
     */
    Integral getIntegralByuserId(Long userId);

    /**
     * 积分商城订单,根据订单扣积分
     * @param orderList
     */
    void shop(OrderList orderList);

    PageInfo query(QueryObject queryObject);
}
